# ## 条件语句
# 18. 编写程序，根据用户输入的分数输出等级：
#     - 90分以上：A
#     - 80-89：B
#     - 70-79：C
#     - 60-69：D
#     - 60分以下：E
temp18 = input("请输入分数")
if not temp18.isdigit():
    print("不合法的输入")
else:
    score_18 = int(temp18)
    if score_18 > 100 :
        print("不合法的输入")
    elif score_18 >= 90 and score_18 <= 100:
        print("A")
    elif score_18 >= 80:
        print("B")
    elif score_18 >= 70 :
        print("C")
    elif score_18 >= 60:
        print("D")
    elif score_18 <60:
        print("E")
# 19. 编写程序，判断用户输入的年份是否为闰年（能被4整除但不能被100整除，或者能被400整除）。
temp19 = input("请输入年份")
if not temp19.isdigit():
    print("不合法的输入")
else:
    score_19 = int(temp19)
    if score_19%4 == 0 and score_19%100 != 0 :
        print("闰年")
    elif score_19%400 == 0 :
        print("闰年")
    else :
        print("普通年份")
# ## 循环语句
# 20. 使用while循环计算1到100所有奇数的和。
count20 = 0
i20 = 1
while i20 <= 100:
    if 1 or i20 % 2!= 0 :
        count20 += i20
    i20 = i20 + 1
print("1到100所有奇数的和",count20)
# 21. 使用for循环打印九九乘法表。
for i21 in range(1, 10) :
    for j21 in range(1, 10) :
        if i21 >= j21 :
            print(f"{i21}*{j21}={i21*j21}\t",end="")
        else:
            break
    print()
# 22. 编写程序，找出100以内的所有素数。
print("素数:")
for i22 in range(1,100):
    count = 0
    for j22 in range(2,i22) :
        if i22%j22 == 0:
            count += 1
            break
    if count == 0 :
        print(i22," ",end="")
# ## 函数
# 23. 编写一个函数`calculate_area`，接收长和宽两个参数，返回矩形的面积。
def calculate_area(lenth,hight):
    return lenth*hight
# 24. 编写一个递归函数计算阶乘`factorial(n)`。
def factorial(n): #递归
    if n == 0:
        return 1
    else:
        return n*factorial(n-1)
def factorial2(n): #递归
    sum = 1
    for i in range(1,n):
        sum = sum*i
    return sum
# 25. 编写一个函数`count_words`，接收一个字符串，返回其中单词的数量（假设单词由空格分隔）。
def count_words(strings):
    count_words = 0
    for string in strings:
        if string == " ":
            count_words += 1
    return count_words
# ## 文件操作
# 26. 编写程序，创建一个名为"test.txt"的文件，写入三行文字："第一行"、"第二行"、"第三行"。

# 27. 编写程序，读取上题创建的"test.txt"文件，并打印文件内容。

# 28. 编写程序，统计一个文本文件中各单词出现的次数（假设文件名为"sample.txt"）。